Cross-point memory arrays generally employ memory elements, e.g., memristor memory elements, at locations where conductive row and column lines cross. A memory element in a cross-point array may be read by applying a read voltage to the row line that crosses the memory element and sensing a current that passes from the row line and through the target memory element to a column line. Similarly, some cross-point array systems write a value to a memory element by applying a write or erase voltage between the row and column lines that cross at the memory element. The write voltage is of sufficient magnitude and appropriate polarity to change the storage state of the target memory element and is generally higher than the read voltage. For example, for a memristor memory element, the write voltage may be high enough to cause an ionic current in the memory element, and the resulting movement of ions changes a resistance state of the memory element. In contrast, the read voltage provides an electronic current of measurable magnitude at least through a low resistance state of the memory element but is low enough to avoid causing an unacceptable ionic current.
Data stored in a cross-point array can alter the performance of the cross-point array, particularly if the stored data has a problematic pattern. For example, a large number of memory elements in low resistance states and connected to the same column line or the same row line may cause that row or column line to have a large capacitance or a large leakage current, which may affect the speed or accuracy of read or write operations.
Encoding the data that is stored in a cross-point array can mitigate or reduce variability in memory performance. In particular, a block of data may be encoded using a coding technique that limits the number of conductive memory elements along any rows and/or columns of memory elements storing the encoded block of data. The encoding of data may thus limit variations in the capacitance or leakage current of row or column lines, and a cross-point memory array storing encoded data may be able to use smaller and more energy efficient peripheral circuits or achieve better performance.
Use of the same reference symbols in different eat figures indicates similar or identical items.